}
}
- /*#[cfg(any(feature = "v2019_3", feature = "dox"))]
- pub fn append_argv(&mut self, argv: &str) {
+ #[cfg(any(feature = "v2019_3", feature = "dox"))]
+ pub fn append_argv(&mut self, argv: &[&str]) {
unsafe {
ostree_sys::ostree_kernel_args_append_argv(
self.to_glib_none_mut().0,
}
#[cfg(any(feature = "v2019_3", feature = "dox"))]
- pub fn append_argv_filtered(&mut self, argv: &str, prefixes: &str) {
+ pub fn append_argv_filtered(&mut self, argv: &[&str], prefixes: &[&str]) {
unsafe {
ostree_sys::ostree_kernel_args_append_argv_filtered(
self.to_glib_none_mut().0,
prefixes.to_glib_none().0,
);
}
- }*/
+ }
#[cfg(any(feature = "v2019_3", feature = "dox"))]
pub fn append_proc_cmdline<P: IsA<gio::Cancellable>>(
}
}
- /*#[cfg(any(feature = "v2019_3", feature = "dox"))]
- pub fn replace_argv(&mut self, argv: &str) {
+ #[cfg(any(feature = "v2019_3", feature = "dox"))]
+ pub fn replace_argv(&mut self, argv: &[&str]) {
unsafe {
ostree_sys::ostree_kernel_args_replace_argv(
self.to_glib_none_mut().0,
argv.to_glib_none().0,
);
}
- }*/
+ }
#[cfg(any(feature = "v2019_3", feature = "dox"))]
pub fn replace_take(&mut self, arg: &str) {
let args = KernelArgs::from(String::from("arg1 arg2 arg3=value"));
assert_eq!(args.to_strv(), vec!["arg1", "arg2", "arg3=value"]);
}
+
+#[test]
+fn should_append_argv() {
+ let mut args = KernelArgs::new();
+ args.append_argv(&["arg1", "arg2=value", "arg3", "arg4=value"]);
+ assert_eq!(args.to_string(), "arg1 arg2=value arg3 arg4=value");
+}
+
+#[test]
+fn should_append_argv_filtered() {
+ let mut args = KernelArgs::new();
+ args.append_argv_filtered(
+ &["prefix.arg1", "arg2", "prefix.arg3", "arg4=value"],
+ &["prefix"],
+ );
+ assert_eq!(args.to_string(), "arg2 arg4=value");
+}
+
+#[test]
+fn should_replace_argv() {
+ let mut args = KernelArgs::from_string("arg1=value1 arg2=value2 arg3");
+ args.replace_argv(&["arg1=value3", "arg3=value4", "arg4"]);
+ assert_eq!(args.to_string(), "arg1=value3 arg2=value2 arg3=value4 arg4");
+}